Release 10.1A: OpenEdge Getting Started:
Application and Integration Services
Logical connection components
A client application logically connects to an application service supported by one or more AppServer instances, as shown in Figure 3–4. The dotted arrows indicate paths of communications required for multiple AppServer instances to service multiple client requests for the same application service. The NameServer is also an optional component for managing session-free connections. As long as there are enough AppServer agents and computing power to run them, a single AppServer can still scale up for higher client loads. However, if you have multiple AppServer instances supporting an application service, you lose the benefits afforded by load balancing, which is available using the NameServer.
Figure 3–4: Logical connection model
![]()
OpenEdge supports logical connections for 4GL and Web service clients only. As shown in Figure 3–4, note that for a Progress 4GL client, OpenEdge manages all access to AppServer resources from within the client session.
Web service clients and logical connections
For Web service clients, OpenEdge hosts all application service management, including access to AppServer resources, in a remote Web service session. This Web service session is managed by the OpenEdge Web Services Adapter (WSA) and it is this session to which the Web service client is logically bound. However, in a session-managed model, the Web service session is physically connected to a single AppServer. In this case, the AppServer and the WSA can simulate an active physical connection to the client using context information that it passes in Web service messages between the AppServer and the client. For more information on how Web service clients work with both session-free and session-managed Web services, see OpenEdge Development: Web Services .
Using a single AppServer instance in the connection
If only a single AppServer supports the application service (with or without a NameServer), a logical connection between a client session and that application service funnels all application service requests from this client to that one AppServer. In this case, the AppServer remains available to receive requests from all clients bound to this application service and manages its own pool of agents to service all such client requests. Although only one AppServer receives these requests, client requests are effectively handled in parallel based on the number of agents that it maintains, thereby achieving some efficiencies in the use of available computational resources.
Using multiple AppServer instances in the connection
If you provide multiple AppServer instances to service client requests for an application service, the NameServer required to manage these requests maintains a list of the available AppServer instances on the network that support the given application service. When a client session binds to an application service, OpenEdge uses the list of AppServer instances provided by the NameServer to establish a connection pool on the client’s behalf.
A connection pool is created in a client session and includes a list of physical connections to AppServer instances that support the same application service. So, when a client binds to the application service, OpenEdge requests connections to AppServer instances that support that application service and uses these connections to service the client requests. The more AppServer instances and agents that are available to support the connection, the more the application service can service client requests in a truly parallel fashion. OpenEdge maintains this connection pool throughout the life of the logical connection, adding and trimming connections as required to satisfy specified client requirements given the AppServer resources that are actually available. With the load balancing option provided by the NameServer, you can also have more client traffic directed to AppServer instances running with more agents and more powerful computing resources.
For more information on NameServers and how they support logical connections to application services, see the information on AppServer run-time components and operation in OpenEdge Application Server: Administration and the information on session models and application services in OpenEdge Application Server: Developing AppServer Applications . For more information on how OpenEdge maintains logical connections for client applications, see the "Connection process" section.
|
Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |